Code cloning is a part ofmany commercial and open source development products.Multiple methods for detecting code clones have\nbeen developed and finding the clones is often used inmodern quality assurance tools in industry. There is no consensuswhether the\ndetected clones are negative for the product and therefore the detected clones are often left unmanaged in the product code base. In\nthis paper we investigate how obstructive code clones of Type I (duplicated exact code fragments) are in large software systems from\nthe perspective of the quality of the product after the release. We conduct a case study at Ericsson and three of its large products,\nwhich handle mobile data traffic. We show how to use automated analogy-based classification to decrease the classification effort\nrequired to determine whether a clone pair should be refactored or remain untouched.The automated method allows classifying\n96% of Type I clones (both algorithms and data declarations) leaving the remaining 4% for the manual classification.The results\nshow that cloning is common in the studied commercial software, but that only 1% of these clones are potentially obstructive and\ncan jeopardize the quality of the product if left unmanaged.
Loading....